<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Parity-changing Avisynth Filters</title>
<link rel="stylesheet" type="text/css" href="../../avisynth.css">
</head>
<body>
<h2><a name="assumeframefield"></a>AssumeFrameBased / AssumeFieldBased</h2>
<p><code>AssumeFrameBased </code>(<var>clip</var>)<br>
  <code>AssumeFieldBased </code>(<var>clip</var>)</p>
<p>AviSynth keeps track of whether a given clip is field-based or frame-based.
If the clip is field-based it also keeps track of the parity of each field (that
is, whether it's the top or the bottom field of a frame). If the clip is frame-based
it keeps track of the dominant field in each frame (that is, which field in
the frame comes first when they're separated).
</p>
<p>However, this information isn't necessarily correct, because field information
usually isn't stored in video files and Avisynth's source filters just guess
at it. <code>AssumeFrameBased</code> and <code>AssumeFieldBased</code>
let you tell AviSynth the correct type of a clip.
</p>
<p><code>AssumeFrameBased</code> throws away the existing information and assumes
that the clip is frame-based, with the bottom (even) field dominant in each
frame. (This happens to be what the source filters guess.) If you want the top
field dominant, use <code>ComplementParity</code> afterwards.
</p>
<p><code>AssumeFieldBased</code> throws away the existing information and assumes 
  that the clip is field-based, with the even-numbered fields being bottom fields 
  and the odd-numbered fields being top fields. If you want it the other way around, 
  use <code>ComplementParity</code> afterwards.</p>
<h2><a name="assumefieldfirst"></a>AssumeTFF / AssumeBFF</h2>
<p><code>AssumeTFF </code>(<var>clip</var>)<br>
  <code>AssumeBFF </code>(<var>clip</var>)</p>
<p>Forcing the field order regardless of current value.</p>
<h2><a name="complementparity"></a>ComplementParity</h2>
<p><code>ComplementParity </code>(<var>clip</var>)</p>
<p>If the input clip is field-based, <code>ComplementParity</code> changes top fields 
  to bottom fields and vice-versa. If the input clip is frame-based, it changes 
  each frame's dominant field (bottom-dominant to top-dominant and vice-versa). </p>
<p><kbd>$Date: 2005/10/13 21:41:11 $</kbd></p>
<FORM>
<INPUT TYPE="Button" VALUE="Back"
onClick="history.go(-1)">
</form>
</body>
</html>
